;-------------------------------------------------------------LICENSE--------------------------------------------------------------;
;                                                                                                                                  ;
;The MAP code is written in Fortran language for magnetohydrodynamics (MHD) calculation with the adaptive mesh refinement (AMR)    ;
;and Message Passing Interface (MPI) parallelization.                                                                              ;
;                                                                                                                                  ;
;Copyright (C) 2012                                                                                                                ;
;Ronglin Jiang                                                                                                                     ;
;rljiang@ssc.net.cn                                                                                                                ;
;585 Guoshoujing Road. Pudong, Shanghai, P.R.C. 201203                                                                             ;
;                                                                                                                                  ;
;This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License         ;
;as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.             ;
;                                                                                                                                  ;
;This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of    ;
;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details.                        ;
;                                                                                                                                  ;
;You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software     ;
;Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.                                                   ;
;                                                                                                                                  ;
;-------------------------------------------------------------LICENSE--------------------------------------------------------------;

; Purpose
;    Calculate the electronic field
;   
; Inputs
;    bx,by,bz: magnetic field
;    x,y,z: coordinate
;   
; Outputs
;    Electronic field
;
; Notes
;    cgs units
;
; Histroy
;    2010-05-24 written by R. L. Jiang at kwasan observatory
;
function elect_field3d,bx,by,bz,vx,vy,vz,current,nx,ny,nz,eta0

on_error,2

emf=dblarr(nx,ny,nz,3)
elect=dblarr(nx,ny,nz,3)

emf[*,*,*,0]=1.d0*vy*bz-1.d0*by*vz
emf[*,*,*,1]=1.d0*vz*bx-1.d0*bz*vx
emf[*,*,*,2]=1.d0*vx*by-1.d0*bx*vy

elect[*,*,*,0]=1.d0*eta0*current[*,*,*,0]-emf[*,*,*,0]
elect[*,*,*,1]=1.d0*eta0*current[*,*,*,1]-emf[*,*,*,1]
elect[*,*,*,2]=1.d0*eta0*current[*,*,*,2]-emf[*,*,*,2]

return,elect

end
